import java.util.Arrays;
public class Main {
    public static void main(String[] args) {
        System.out.println("Hello world!");
        // **** Arrays类的介绍 ****
        // 常见的Arrays类的使用


        // 1.Arrays.sort();

        // 用于给数组排序
        //
        int[] nums= {2,5,1,9,4};
        Arrays.sort(nums);

        // 能排序的类型有很多 , 基本包含所有基本类型的排序
        // 但是不能给动态数组排序ArrayList排序
        // Arrays.sort() 只能按升序排序

        // 2.Arrays.fill()
        // 用于给数组填充数字
        int[] nums1=new int[5];
        Arrays.fill(nums1, 6);
        // 表示给数组所有的值赋值为 6；
        // 当然也包括其他类型的数组

        // 3.Arrays.equals()
        //用于对比两个数组中的元素是否一样
        int[] nums11={2,6,8,1};
        int[] nums2={2,6,8,1};
        Arrays.equals(nums11,nums2);  // true
         // 什么类型的都能比较

        // 4.Arrays.toString()
        // 将数组转为字符串表示出来
        Character[] chars= {'a','b','c'};
        System.out.print(Arrays.toString(chars));// [a, b, c]

        // 当然也有 将字符串中的字符转换为字符数组的
        // 5.toCharArray()
        String b="ss123456";
        char []c=b.toCharArray();
        System.out.println(b);
        System.out.println(b.toCharArray());
        System.out.println(c[2]);

        // 6.Arrays.copyOf()
        // Arrays的copyOf()方法传回的数组是新的数组对象，改变传回数组中的元素值，不会影响原来的数组。
        // copyOf()的第二个自变量指定要建立的新数组长度，如果新数组的长度超过原数组的长度，则保留数组默认值
        // 用来扩容好用
        int[] arr1 = {1, 2, 3, 4, 5};
        int[] arr2 = Arrays.copyOf(arr1, 5);
        int[] arr3 = Arrays.copyOf(arr1, 10);
        for(int i = 0; i < arr2.length; i++)
            System.out.print(arr2[i] + " ");
        System.out.println();
        for(int i = 0; i < arr3.length; i++)
            System.out.print(arr3[i] + " ");

    }
}